'use strict';

module.exports = {
    console: {
        transports: [
            {
                type: 'console',
                options: {
                    silent: false,
                    raw: false,
                    name: 'console',
                    level: 'error',
                    formatter: null,
                    handleExceptions: false,
                    exceptionsLevel: 'error',
                    humanReadableUnhandledException: false,

                    stderrLevels: ['error', 'debug'],
                    //debugStdout:['error', 'debug'],
                    json: false,
                    colorize: false,
                    prettyPrint: false,
                    timestamp: false,
                    showLevel: true,
                    label: null,
                    logstash: false,
                    depth: null,
                    align: false,
                    eol: '\n'
                }
            }
        ]
    },
    file: {
        transports: [
            {
                type: 'file',
                options: {
                    silent: false,
                    raw: false,
                    name: 'file',
                    level: 'error',
                    formatter: null,
                    handleExceptions: false,
                    exceptionsLevel: 'error',
                    humanReadableUnhandledException: false,

                    json: false,
                    logstash: false,
                    colorize: false,
                    maxsize: null,
                    rotationFormat: false,
                    zippedArchive: false,
                    maxFiles: null,
                    prettyPrint: false,
                    label: null,
                    timestamp: true,
                    tailable: false,
                    depth: null,
                    showLevel: true,
                    maxRetries: 2,
                    eol: '\n',

                    filename: 'logs/error.log',
                    //dirname:'logs',
                    //stream:fs.createWriteStream('')
                    options: {
                        flags: 'a'
                    },
                    highWaterMark: 24
                }
            }
        ]
    },
    memory: {
        transports: [
            {
                type: 'memory',
                options: {
                    silent: false,
                    raw: false,
                    name: 'memory',
                    level: 'error',
                    formatter: null,
                    handleExceptions: false,
                    exceptionsLevel: 'error',
                    humanReadableUnhandledException: false,

                    json: false,
                    colorize: false,
                    prettyPrint: false,
                    timestamp: false,
                    showLevel: true,
                    label: null,
                    depth: null
                }
            }
        ]
    },
    http: {
        transports: [
            {
                type: 'http',
                options: {
                    silent: false,
                    raw: false,
                    name: 'http',
                    level: 'error',
                    formatter: null,
                    handleExceptions: false,
                    exceptionsLevel: 'error',
                    humanReadableUnhandledException: false,

                    ssl: false,
                    host: 'localhost',
                    port: undefined,
                    auth: undefined,
                    path: ''
                }
            }
        ]
    },
    rotateFile: {
        transports: [
            {
                type: 'rotateFile',
                options: {
                    silent: false,
                    raw: false,
                    name: 'file',
                    level: 'error',
                    formatter: null,
                    handleExceptions: false,
                    exceptionsLevel: 'error',
                    humanReadableUnhandledException: false,

                    json: false,
                    colorize: false,
                    maxsize: null,
                    maxFiles: null,
                    prettyPrint: false,
                    label: null,
                    timestamp: true,
                    depth: null,
                    showLevel: true,
                    maxRetries: 2,
                    eol: '\n',
                    datePattern:'.yyyy-MM-dd',
                    prepend:false,

                    filename: 'error.log',
                    dirname:'logs',
                    //stream:fs.createWriteStream('')
                    options: {
                        flags: 'a'
                    },
                    highWaterMark: 24
                }
            }
        ]
    }
};
